home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / cbibcode.arc / MOVEDAT2.C < prev    next >
Encoding:
C/C++ Source or Header  |  1991-08-05  |  834 b   |  20 lines

  1. /* mvedata2.c, from pp.157-158 of Turbo C Bible  */
  2. /* Copies a specified number of bytes of a buffer to a another
  3.          in possibly different segment. */
  4. #include <stdio.h>
  5. #include <dos.h>                       /* For FP_OFF and FP_SEG               */
  6. #include <mem.h>
  7. static short dispbuf[25][80];          /* Display buffer */
  8. main()
  9. {
  10.     void far *address;
  11.     unsigned bufseg, bufoff;
  12.     memset(dispbuf, '\0', sizeof(dispbuf));
  13.                     /* Initialize display buffer     */
  14.     address = (void far *)dispbuf;  /* Get segment                   */
  15.     bufseg = FP_SEG(address);       /*       and offset              */
  16.     bufoff = FP_OFF(address);       /*             address of buffer */
  17.     movedata(bufseg, bufoff, 0xb800,0x0000, sizeof(dispbuf));
  18.                     /* copy buffer into video memory */
  19.                     /*         -- clears screen     */
  20. }